/*
 * @File    :   logout.js
 * @Time    :   2024/03/24 16:42:11
 * @Author  :   chakcy
 * @Email   :   947105045@qq.com
 * @description   :   退出模块
 */

const { Request, jwt } = require('../../../common')
const { token } = require('../../../config')

// 退出功能
function logout(event) {
    // 获取IPC token
    const ipcToken = token['ipcToken']
    // 验证IPC token
    jwt.verify(ipcToken).then((message) => {
        // 发送退出请求
        Request.post('/logout', {
            log: [
                {
                    'action': 'login',
                    'status': 'success',
                    'description': 'User logged out', 'time': Date.now()
                }
            ]
        }).then(response => {
            console.log('Logout success', response.data)
        }).catch((error) => {
            console.error('Logout error', error)
        })
        // 清空token
        token['serverToken'] = null
        token['ipcToken'] = null
        // 发送退出成功消息
        event.sender.send('logout-reply', 'logout success')
    }).catch((error) => {
        // 处理IPC token验证失败情况
        console.error('IPC token 验证失败', error)
        event.sender.send('logout-reply', 'IPC token 验证失败')
    })
}

module.exports = {
    logout
}